home *** CD-ROM | disk | FTP | other *** search
/ Freelog 22 / freelog 22.iso / Prog / Djgpp / DJDEV203.ZIP / include / unistd.h < prev    next >
Encoding:
C/C++ Source or Header  |  1999-12-24  |  4.2 KB  |  160 lines

  1. /* Copyright (C) 1999 DJ Delorie, see COPYING.DJ for details */
  2. /* Copyright (C) 1998 DJ Delorie, see COPYING.DJ for details */
  3. /* Copyright (C) 1995 DJ Delorie, see COPYING.DJ for details */
  4. #ifndef __dj_include_unistd_h_
  5. #define __dj_include_unistd_h_
  6.  
  7. #ifdef __cplusplus
  8. extern "C" {
  9. #endif
  10.  
  11. #ifndef __dj_ENFORCE_ANSI_FREESTANDING
  12.  
  13. #ifndef __STRICT_ANSI__
  14.  
  15. #include <sys/types.h> /* NOT POSIX but you can't include just unistd.h without it */
  16. #include <sys/djtypes.h>
  17.  
  18. #define SEEK_SET    0
  19. #define SEEK_CUR    1
  20. #define SEEK_END    2
  21.   
  22. /* Some programs think they know better... */
  23. #undef NULL
  24.  
  25. #define NULL 0
  26.  
  27. #define F_OK    0x01
  28. #define R_OK    0x02
  29. #define W_OK    0x04
  30. #define X_OK    0x08
  31.  
  32. #define STDIN_FILENO        0
  33. #define STDOUT_FILENO        1
  34. #define STDERR_FILENO        2
  35.  
  36. #define _PC_CHOWN_RESTRICTED    1
  37. #define _PC_LINK_MAX        2
  38. #define _PC_MAX_CANON        3
  39. #define _PC_MAX_INPUT        4
  40. #define _PC_NAME_MAX        5
  41. #define _PC_NO_TRUNC        6
  42. #define _PC_PATH_MAX        7
  43. #define _PC_PIPE_BUF        8
  44. #define _PC_VDISABLE        9
  45.  
  46. #define _POSIX_CHOWN_RESTRICTED    0
  47. #undef  _POSIX_JOB_CONTROL
  48. #define _POSIX_NO_TRUNC        0
  49. #undef  _POSIX_SAVED_IDS
  50. #define _POSIX_VDISABLE        -1
  51. #define _POSIX_VERSION        199009L
  52.  
  53. #define _SC_ARG_MAX        1
  54. #define _SC_CHILD_MAX        2
  55. #define _SC_CLK_TCK        3
  56. #define _SC_JOB_CONTROL        4
  57. #define _SC_NGROUPS_MAX        5
  58. #define _SC_OPEN_MAX        6
  59. #define _SC_SAVED_IDS        7
  60. #define _SC_STREAM_MAX        8
  61. #define _SC_TZNAME_MAX        9
  62. #define _SC_VERSION        10
  63.  
  64. __DJ_size_t
  65. #undef __DJ_size_t
  66. #define __DJ_size_t
  67. __DJ_ssize_t
  68. #undef __DJ_ssize_t
  69. #define __DJ_ssize_t
  70.  
  71. extern char *optarg;
  72. extern int optind, opterr, optopt;
  73.  
  74. void        __exit(int _status) __attribute__((noreturn));
  75. void        _exit(int _status) __attribute__((noreturn));
  76. int        access(const char *_path, int _amode);
  77. unsigned int    alarm(unsigned int _seconds);
  78. int        chdir(const char *_path);
  79. int        chown(const char *_path, uid_t _owner, gid_t _group);
  80. int        close(int _fildes);
  81. char *        ctermid(char *_s);
  82. int        dup(int _fildes);
  83. int        dup2(int _fildes, int _fildes2);
  84. int        execl(const char *_path, const char *_arg, ...);
  85. int        execle(const char *_path, const char *_arg, ...);
  86. int        execlp(const char *_file, const char *_arg, ...);
  87. int        execv(const char *_path, char *const _argv[]);
  88. int        execve(const char *_path, char *const _argv[], char *const _envp[]);
  89. int        execvp(const char *_file, char *const _argv[]);
  90. pid_t        fork(void);
  91. long        fpathconf(int _fildes, int _name);
  92. char *        getcwd(char *_buf, size_t _size);
  93. gid_t        getegid(void);
  94. uid_t        geteuid(void);
  95. gid_t        getgid(void);
  96. int        getgroups(int _gidsetsize, gid_t *_grouplist);
  97. char *        getlogin(void);
  98. int        getopt(int _argc, char *const _argv[], const char *_optstring);
  99. pid_t        getpgrp(void);
  100. pid_t        getpid(void);
  101. pid_t        getppid(void);
  102. uid_t        getuid(void);
  103. int        isatty(int _fildes);
  104. int        link(const char *_existing, const char *_new);
  105. off_t        lseek(int _fildes, off_t _offset, int _whence);
  106. long        pathconf(const char *_path, int _name);
  107. int        pause(void);
  108. int        pipe(int _fildes[2]);
  109. ssize_t        read(int _fildes, void *_buf, size_t _nbyte);
  110. int        rmdir(const char *_path);
  111. int        setgid(gid_t _gid);
  112. int        setpgid(pid_t _pid, pid_t _pgid);
  113. pid_t        setsid(void);
  114. int        setuid(uid_t uid);
  115. unsigned int    sleep(unsigned int _seconds);
  116. long        sysconf(int _name);
  117. pid_t        tcgetpgrp(int _fildes);
  118. int        tcsetpgrp(int _fildes, pid_t _pgrp_id);
  119. char *        ttyname(int _fildes);
  120. int        unlink(const char *_path);
  121. ssize_t        write(int _fildes, const void *_buf, size_t _nbyte);
  122.  
  123. #ifndef _POSIX_SOURCE
  124.  
  125. /* additional access() checks */
  126. #define D_OK    0x10
  127.  
  128. char *        basename(const char *_fn);
  129. int        brk(void *_heaptop);
  130. char *        dirname(const char *_fn);
  131. int        __file_exists(const char *_fn);
  132. int        fsync(int _fd);
  133. int        ftruncate(int, off_t);
  134. int        getdtablesize(void);
  135. int        gethostname(char *buf, int size);
  136. int        getpagesize(void);
  137. char *        getwd(char *__buffer);
  138. int        nice(int _increment);
  139. void *        sbrk(int _delta);
  140. int        symlink (const char *, const char *);
  141. int        sync(void);
  142. int        truncate(const char*, off_t);
  143. unsigned int    usleep(unsigned int _useconds);
  144. #ifndef vfork
  145. pid_t        vfork(void);
  146. #endif
  147.  
  148. #endif /* !_POSIX_SOURCE */
  149. #endif /* !__STRICT_ANSI__ */
  150. #endif /* !__dj_ENFORCE_ANSI_FREESTANDING */
  151.  
  152. #ifndef __dj_ENFORCE_FUNCTION_CALLS
  153. #endif /* !__dj_ENFORCE_FUNCTION_CALLS */
  154.  
  155. #ifdef __cplusplus
  156. }
  157. #endif
  158.  
  159. #endif /* !__dj_include_unistd_h_ */
  160.